// 위젯 페이지: OBS·미리보기 iframe 한정 — 스크롤 숨김 html, body { overflow: hidden; } .alert-page { width: 100vw; height: 100vh; display: flex; align-items: center; justify-content: center; background: transparent; container-type: inline-size; } .donation-alert { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; width: 100%; height: 100%; &.alert-show { opacity: 1; transform: translateY(0); } &__image { display: flex; justify-content: center; width: 100%; margin-bottom: 16px; img { max-width: min(200px, 100%); max-height: 200px; object-fit: contain; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.3)); } } &__content { display: flex; flex-direction: column; gap: 8px; } &__sender { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; row-gap: 4px; font-weight: 700; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); } &__name { font-family: var(--nickname-font-family, inherit); font-size: min(var(--nickname-font-size, 24px), 5cqi); color: var(--nickname-font-color, #FFD700); word-break: keep-all; overflow-wrap: break-word; } &__amount { font-family: var(--amount-font-family, inherit); font-size: min(var(--amount-font-size, 24px), 5cqi); color: var(--amount-font-color, #FF6B35); word-break: keep-all; overflow-wrap: break-word; } &__template-text { font-family: var(--template-font-family, inherit); font-size: min(var(--template-font-size, 24px), 5cqi); color: var(--template-font-color, #FFFFFF); word-break: keep-all; overflow-wrap: break-word; } &__message { font-family: var(--message-font-family, inherit); font-size: var(--message-font-size, 18px); font-weight: 500; color: var(--message-font-color, #FFFFFF); text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5); max-width: 400px; word-break: keep-all; line-height: 1.4; margin: 0 auto; } &__crew { font-size: 14px; color: #A0D2FF; margin-top: 4px; } } @keyframes alertFadeOut { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(0.8); } }